package dao

import (
	"github.com/google/wire"
	"ruoyi-go-echo-ddd/internal/domain/repository"
)

// ProviderSet wire注入使用
var ProviderSet = wire.NewSet(
	wire.Bind(new(repository.SysDeptRepository), new(*SysDeptDaoImpl)),
	wire.Bind(new(repository.SysMenuRepository), new(*SysMenuDaoImpl)),
	wire.Bind(new(repository.SysMenuResourcesRepo), new(*SysMenuResourcesDaoImpl)),
	wire.Bind(new(repository.SysPostRepository), new(*SysPostDaoImpl)),
	wire.Bind(new(repository.SysRoleDeptRepository), new(*SysRoleDeptDaoImpl)),
	wire.Bind(new(repository.SysRoleMenuRepository), new(*SysRoleMenuDaoImpl)),
	wire.Bind(new(repository.SysRoleRepository), new(*SysRoleDaoImpl)),
	wire.Bind(new(repository.SysUserPostRepository), new(*SysUserPostDaoImpl)),
	wire.Bind(new(repository.SysUserRepository), new(*SysUserDaoImpl)),
	wire.Bind(new(repository.SysUserRoleRepository), new(*SysUserRoleDaoImpl)),

	NewSysDeptDaoImpl,
	NewSysMenuDaoImpl,
	NewMenuResourcesDaoImpl,
	NewSysPostDaoImpl,
	NewSysRoleDaoImpl,
	NewSysRoleDeptDaoImpl,
	NewSysRoleMenuDaoImpl,
	NewSysUserDaoImpl,
	NewSysUserPostDaoImpl,
	NewSysUserRoleDaoImpl,
)
